Subject: Re: SAS Keywords (__saveds etc)
From: [email-masked] (Doug Walker)
Date: Mon, 31 Jan 1994 14:39:23 GMT
Newsgroups: comp.sys.amiga.programmer

In article <[email-masked]>, [email-masked] (Doug Walker) writes:
|> 
|> In article <[email-masked]>, [email-masked] (Staale L. Hansen) writes:
|> |> In article <[email-masked]>, [email-masked] (James Cooper) writes:
|> |> [...]
|> |> |> >c) __register
|> |> |> >   I think this is to force a parameter into a register for library
|> |> |> >   calls.
|> |> |> 
|> |> |> *Must* be used with __asm (mentioed above); it specifies the register a
|> |> |> parameter will arrive in when the function in called.
|> |> |> 
|> |> |>         int __asm foo(register __a3 char *bar);
|> |> |> 
|> |> |> This says that function "foo" will receive its only parameter in register
|> |> |> A3, rather than the default for pointers of A0.
|> |> 
|> |> But how do you specify which register the return value will be in? As
|> |> far as I can see there is NO way to do this, you get register D0
|> |> whether you like it or not.
|> 
|> The return value is always in D0 unless the function is returning
|> a long, in which case it's in D0/D1.

AACK!  AACK!  NO, DON'T SEND ME EMAIL!  I MEANT "double", NOT "long"!

double double double double double long (slap!  Ow!) double double...

-- 
  *****                    / [email-masked]
 *|_o_o|\\     Doug Walker<  BIX, Portal: djwalker
 *|. o.| ||                \ CompuServe: 71165,2274
  | o  |//     
  ====== 
Any opinions expressed are mine, not those of SAS Institute, Inc.